home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-08-27 | 65.5 KB | 1,296 lines |
- *** N.B.: This is the corrected version as of November 1, 1991. Discard
- *** all previous versions! This is the one that goes with the October 10,
- *** 1991 Draft International Standard. Previous versions were in error!
- ***
- <!-- This file contains the formal SGML specifications from the HyTime
- standard (ISO/IEC DIS 10744) released October, 1991. It is not a
- true DTD, but a "meta-DTD" that specifies the architectural forms.
- Consult the standard for details.
- -->
- <!DOCTYPE doc [
-
- <!-- NOTE: The section heading comments identify the
- corresponding clause headings in the body of the standard.
- Those in uppercase identify HyTime modules.
- Consult the standard for other conventions and explanations.
- -->
- <!-- BASE MODULE -->
- <!-- HyTime Architectural Form Name -->
- <!attlist all-hyaf
- HyTime -- HyTime architectural form --
- -- Required #FIXED value as specified
- for individual architectural form --
- NAME #FIXED "formname"
- >
-
- <!-- HyTime Document -->
- <!ENTITY % loc -- Location address architectural forms --
- "bibloc|nameloc|coordloc|strloc|tokenloc|treeloc|pathloc|attloc|notloc|fcsloc">
- <!ENTITY % link -- Hyperlink architectural forms --
- "linkend|ilink|agglink|spanlink">
- <!ENTITY % object -- Architectural forms allowed in events --
- "nHyTime|clink|pause|hold|wallpapr|accanch|fcs">
- <!ENTITY % resbase -- Resource architectural forms: base module --
- "activity|dvlist|desctab|lexmodel">
- <!ENTITY % resmeas -- Resource architectural forms: measurement module --
- "dimspec|dimref|markfun|measure">
- <!ENTITY % resfcs -- Resource architectural forms: FCS module --
- "exrecon|calref">
- <!ENTITY % resrend -- Resource architectural forms: rendition module --
- "prorule|modrule|wndpatch|modpatch">
- <!ENTITY % resorce -- Resource architectural forms: all modules --
- "%resbase;|%resmeas;|%resfcs;|%resrend;">
- <!ENTITY % eltype -- Standard element types --
- "HyLex|HyFunk|HyOp">
- <!element doc -- HyTime document element --
- - O ((%object;)|(%resorce;)|(%eltype;))+ +(%loc;|%link)>
- <!attlist doc HyTime NAME #FIXED doc
- id ID #IMPLIED
- -- docdim attributes --
- >
- <!element nHyTime -- Pseudo-form: Non-HyTime elements and/or #PCDATA --
- -- "nHyTime?": content can be empty; "nHyTime": non-empty --
- - O ((%object;)|(%resorce;)|(%eltype;))+ +(%loc;|%link)
- >
-
- <!-- HyTime Identification Attributes -->
- <!attlist all-hyid
- id -- SGML unique identifier --
- ID #IMPLIED -- Default: none --
- HyNames -- User names for HyTime attributes --
- -- lextype(ATTNAME, s+, NAME,
- (s+, ATTNAME, s+, NAME)*) --
- CDATA #FIXED "" -- Default: none --
- conloc -- Content location (if not in syntactic content) --
- -- Can be any data if content model is all data,
- or else must conform to content model --
- -- reftype(#ANY) --
- -- lextype(IDREF) --
- CDATA #CONREF -- Default: syntactic content --
- conlocx -- Content location extraction --
- -- Choice: EXTRACT the content of the element
- at the content location, or USE the element
- or data at the content location --
- (extract|use) use
- >
-
- <!-- Lexical Types -->
- <!attlist all-lex
- lextype -- Lexical types of CDATA attribute values
- or character data content --
- -- Constraint: a given ATTNAME or #CONTENT
- can occur only once; a NAME must be an ltn of a
- lexmodel whose element type is the corresponding
- GI in lexmodel --
- -- lextype((ATTNAME|(rni,"CONTENT")), s+, NAME,
- (s+, (ATTNAME|(rni,"CONTENT")), s+, NAME)*) --
- CDATA #FIXED "" -- Default: none defined --
- lexmodel -- Lexical model notations used by lextype --
- -- Constraint: 1 per attribute or 1 for all; must
- be GIs of lexmodel form element types --
- -- lextype(gil) --
- CDATA #FIXED "" -- Default: none --
- >
- <!element lexmodel -- Lexical model --
- - O (nHyTime)>
- <!attlist lexmodel HyTime NAME #FIXED lexmodel
- conloc IDREF #CONREF
- -- lexmodel attributes --
- ltn -- Lexical type name --
- NAME #REQUIRED
- notation -- Data content notation --
- NAME #REQUIRED -- #FIXED recommended --
- >
-
- <!-- Attribute Value Element Types -->
- <!attlist all-elt
- eltype -- Element types of attribute values --
- -- Attribute is declared as IDREF --
- -- Constraint: an ATTNAME can only occur once --
- -- lextype(ATTNAME, s+, GI,
- (s+, ATTNAME, s+, GI)*) --
- CDATA #FIXED "" -- Default: none defined --
- >
-
- <!-- Reference Element Types -->
- <!attlist all-reft
- reftype -- Element types of ID references
- used as true references (e.g., link ends) --
- -- Constraint: types apply to anchors, not
- intermediate location addresses --
- -- lextype((ATTNAME|(rni,"CONTENT")),
- s+, (GI|(rni,"ANY")))+ --
- CDATA #FIXED "" -- Default: none defined --
- >
-
- <!-- Bit Combination Skip Count -->
- <!attlist all-bits
- bitskip -- Number of unparsed bit combinations
- to skip till end of element --
- NUMBER #IMPLIED -- Default: not known --
- >
-
- <!-- Default Value List Attributes -->
- <!attlist all-dvl
- subdvl -- Subelement impliable attribute value defaults --
- -- eltype(dvlist) --
- IDREFS #IMPLIED -- Default: none --
- sibdvl -- Sibling impliable attribute value defaults --
- -- eltype(dvlist) --
- IDREFS #IMPLIED -- Default: none --
- >
-
- <!-- Default Value List -->
- <!element dvlist -- Default value list --
- -- Constraint: attribute specification list --
- - O (#PCDATA) -- lextype(char*) -->
- <!attlist dvlist HyTime NAME #FIXED dvlist
- id ID #REQUIRED
- -- dvlist attributes--
- dvgi -- Default value element type --
- -- Applies to all elements if omitted --
- -- lextype(GI) --
- CDATA "" -- Default: all elements --
- preatts -- Attributes whose values are to be preempted --
- -- Constraint: must be in dvlist content --
- -- lextype(ATTNAME, (s+, ATTNAME)*) --
- CDATA "" -- Default: none --
- >
-
- <!-- Descriptive Text Attributes -->
- <!attlist all-desc
- desctxt -- Descriptive text --
- -- If specified, its descdef in desctab is treated
- by HyTime as the content of the element. --
- -- lextype(tokl) --
- CDATA #CONREF -- Default: none --
- desctab -- Current description tables --
- -- Searched in order listed --
- -- eltype(desctab) --
- IDREFS #IMPLIED
- -- Default: all, in order of occurrence --
- descuse -- Descriptive text usage --
- -- Choice: Use the element in the descriptive text
- definition as the content (DESCCONT) or use it
- as a substitute (DESCSUB) for this element. --
- (desccont|descsub) descsub
- >
-
- <!-- Description Table -->
- <!element desctab -- Descriptive text definition table --
- - O (desctxt, descdef)+ >
- <!attlist desctab HyTime NAME #FIXED desctab
- id ID #REQUIRED >
-
- <!-- Descriptive Text -->
- <!element desctxt -- Descriptive text --
- O O (#PCDATA) -- lextype(tokl) -->
- <!attlist desctxt HyTime NAME #FIXED desctxt >
-
- <!-- Descriptive Text Definition -->
- <!element descdef -- Descriptive text definition --
- O O ANY >
- <!attlist descdef HyTime NAME #FIXED descdef >
-
- <!-- Activity Tracking Policy -->
- <!attlist all-act
- activity -- Activity tracking policy for this element --
- -- eltype(activity) --
- IDREF #IMPLIED -- Default: none --
- >
- <!element activity -- Activity tracking policy --
- - O (nHyTime?)>
- <!attlist activity HyTime NAME #FIXED activity
- id ID #REQUIRED
- created -- Tracking policy when element created --
- -- eltype(nHyTime) --
- IDREF #IMPLIED -- Default: none --
- modified -- Tracking policy when element modified --
- -- eltype(nHyTime) --
- IDREF #IMPLIED -- Default: none --
- linked -- Tracking policy when link to element is created --
- -- Requires hyperlinks module --
- -- eltype(nHyTime) --
- IDREF #IMPLIED -- Default: none --
- accessed -- Tracking policy when element accessed --
- -- eltype(nHyTime) --
- IDREF #IMPLIED -- Default: none --
- deleted -- Tracking policy when element deleted --
- -- eltype(nHyTime) --
- IDREF #IMPLIED -- Default: none --
- >
-
- <!-- MEASUREMENT -->
- <!-- Dimension Specification -->
- <!element dimspec -- Dimension specification --
- - O (marker1?, marker2)>
- <!attlist dimspec HyTime NAME #FIXED dimspec
- id ID #IMPLIED
- -- dimspec attributes --
- overrun -- Handling of dimension that overruns range --
- (error|trunc) error
- >
-
- <!-- First Marker Specification -->
- <!element marker1 -- 1st marker specification of a dimension specification --
- -- Resolves to signed non-zero integer that indicates
- direction of indexing:
- Positive: from start of range
- Negative: from end of range if marker2 is positive,
- from marker2 if marker2 is negative --
- -- Constraint: calref permitted only in calendars --
- O O (marker|dimref|markfun|calref) >
- <!attlist marker1 HyTime NAME #FIXED marker1 >
-
- <!-- Second Marker Specification -->
- <!element marker2 -- 2nd marker specification of a dimension specification --
- -- Resolves to signed non-zero integer that indicates
- direction of indexing:
- Positive: from marker1
- Negative: from end of range --
- -- Constraint: calref permitted only in calendars --
- O O (marker|dimref|markfun|calref) >
- <!attlist marker2 HyTime NAME #FIXED marker2 >
-
- <!-- Axis Marker -->
- <!element marker -- Axis marker --
- O O (#PCDATA) -- lextype(snzi) -->
- <!attlist marker HyTime NAME #FIXED marker >
-
- <!-- Extent Specification -->
- <!attlist exspec
- -- exspec use: event proscope modscope --
- exspec -- Extent specification --
- -- Constraint: one dimspec per axis --
- -- eltype(dimspec) --
- -- lextype(idrl) --
- CDATA #REQUIRED
- >
-
- <!-- Measurement Domain Definition -->
- <!element measure -- Measurement domain: convertible granules --
- -- Defines granules in terms of a reference granule
- and ultimately a standard measurement unit (SMU) --
- -- Multiple definitions with same SMU comprise one domain --
- - O (granule+) >
- <!attlist measure HyTime NAME #FIXED measure
- id ID #IMPLIED
- smu -- Standard measurement unit for domain --
- -- Constraint: notation name of an SMU.
- If virtual, it must have a formal public ID
- of "Virtual Measurement Unit" --
- NAME #REQUIRED
- >
- <!element granule -- Granule definition --
- - O (nHyTime?) >
- <!attlist granule HyTime NAME #FIXED granule
- gn -- Granule name (case-sensitive) --
- -- Constraint: cannot be same as SMU name
- (with case ignored) --
- -- lextype(token) --
- CDATA #REQUIRED
- gd -- Granule definition expression --
- -- Constraint: ratio, and reference granule that
- ratio is multiplied by (or the SMU, for which
- case is ignored) --
- -- lextype(frac, s+, token) --
- CDATA #REQUIRED
- >
-
- <!-- Schedule Measurement -->
- <!attlist schdmeas
- -- schdmeas use:
- evsched baton wand evgrp event --
- basegran -- Base granule for each axis --
- -- lextype(tokl) --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- gran2hmu -- Granule to HMU ratio for each axis --
- -- lextype(fracs) --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- pls2gran -- Pulse to granule ratio for each axis --
- -- lextype(fracs) --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- >
-
- <!-- Dimension Reference -->
- <!element dimref -- Dimension reference --
- -- Constraint: semantic constraints on references
- across axes (for example, a calref is only
- permitted from the dimspec of a calendar event).
- Empty content permitted only in a derived extent
- specification, signifying dimension of projector scope. --
- -- reftype(dimspec|evsched|wand|baton|calref|
- axis|evgrp|event|modscope|proscope) --
- - O (#PCDATA) -- lextype(IDREF)? -->
- <!attlist dimref HyTime NAME #FIXED dimref
- id ID #IMPLIED
- -- dimref attributes --
- axisref -- Axis referenced --
- -- Omit if referenced element is a dimspec
- or has only one axis --
- -- lextype(GI) --
- CDATA "" -- Default: one axis --
- projectr -- Event projector --
- -- For reference to projected dimension of an
- event, the projector that created it --
- -- Constraint: must be in same baton as reference --
- -- eltype(projectr) --
- IDREF #IMPLIED -- Default: not projected --
- selcomp -- Selected component of dimension --
- (first|last|qcnt) qcnt
- flip -- Last is normally counted from end of range
- (negative sign), and first from start of range
- (positive). Qcnt is also normally positive.
- Flip counts last from start of range (making it
- positive), and first from end of range (making
- it negative). Flip also makes qcnt negative. --
- (flip|noflip) noflip
- >
-
- <!element markfun -- Marker function --
- -- Represents (i.e., function returns) an axis marker --
- - O (nHyTime) >
- <!attlist markfun HyTime NAME #FIXED markfun
- id ID #IMPLIED
- -- markfun attributes --
- notation -- Data content notation --
- NAME #IMPLIED -- #FIXED recommended --
- mfn -- Marker function name --
- NAME #IMPLIED -- Default: none --
- usemfn -- Mfn of another function to which to pass
- the args of this one --
- NAME #CONREF -- Default: none --
- args -- Argument string passed to the function
- (if supported by function language) --
- -- lextype(char*) --
- CDATA "" -- Default: none --
- >
-
- <!-- Document Dimension and Measurement Attributes -->
- <!attlist docdim
- -- docdim use: doc --
- hyqcnt -- Highest allowable quantum count in document --
- -- Constraint: specified as the power of 2 whose
- value is 1 greater than the desired value;
- power must be 32 or greater. --
- NUMBER #FIXED 32 -- Default: 4,294,967,295 --
- docmdu -- SMU to MDU ratio that makes the MDU the least
- common denominator of HMUs for all schedules in
- all FCS that are in a given measurement domain.--
- -- Constraint: SMU name and ratio for one or
- more of the domains used in the document. --
- -- lextype((NAME,s+,frac),(s+,NAME,s+,frac)*) --
- CDATA #FIXED "" -- Default: set by FCS or axis --
- >
-
-
- <!-- LOCATION ADDRESS -->
- <!-- External ID References -->
- <!attlist all-xidr
- exidrefs -- IDREFs that need not resolve in document --
- -- lextype((rni,"ALL") |
- (((rni,"CONTENT")|ATTNAME), (s+, ATTNAME)*)) --
- CDATA "" -- Default: all must be in document --
- >
-
- <!-- Location Source -->
- <!attlist locsrc
- -- locsrc use: coordloc strloc tokenloc
- treeloc pathloc attloc notloc fcsloc --
- locsrc -- location source --
- -- reftype(#ALL) --
- -- lextype(idrl) --
- CDATA "" --he moslt: previous specified --
- evalsrc -- Evaluate source as address or use as location --
- (evalsrc|donteval) evalsrc
- >
-
- <!-- Aggregate Locations -->
- <!attlist aggloc
- -- aggloc use: coordloc strloc tokenloc
- treeloc pathloc attloc notloc fcsloc
- linkend agglink spanlink --
- ordering -- Is ordering of locations significant? --
- (ordered|noorder) noorder
- maxlevel -- Level that IDREF resolution cannot exceed,
- relative to this aggloc. Default: all levels --
- -- Resolution includes query evaluation --
- -- lextype(snzi) --
- NMTOKEN "-1" -- Default: all levels --
- merged -- Should levels (after resolution to maxlevel)
- be merged into one level, or stay nested? --
- (merged|nested) nested
- aggsrc -- Aggregate source: aggregate or members --
- (agg|members) members
- >
-
- <!-- Bibliographic Location Address -->
- <!element bibloc -- Textual bibliographic reference to real object --
- -- Application can define content model as needed --
- - O (nHyTime) >
- <!attlist bibloc HyTime NAME #FIXED bibloc
- id ID #REQUIRED
- >
-
- <!-- Named Location Address -->
- <!element nameloc -- Assigns a local ID to one or more entities or elements --
- -- If more than one, this element is an aggloc --
- - O (namelist|nmquery)+ >
- <!attlist nameloc HyTime NAME #FIXED nameloc
- id ID #REQUIRED
- -- nameloc attributes --
- namesrc -- Concatenated name lists (if not in content) --
- -- reftype(namelist|nmquery)+ --
- IDREFS #CONREF
- nametype -- Entity names or IDs of elements --
- (entity|element) #REQUIRED
- docent -- SGML document entity whose prolog declares
- entities or elements named in name list --
- -- reftype(nHyTime) --
- -- lextype(idrl) --
- CDATA "" -- Default: this document --
- dtdorlpd -- Active DTD/LPD for SGML document entity --
- NAME #IMPLIED -- Default: this DTD --
- -- aggloc attributes -->
-
- <!-- Name List Specification -->
- <!element namelist -- List of local or external IDs, or entities --
- -- Content is parsed like attribute value specification
- for a name list value in docent concrete syntax
- except there is no limit on number of names in list --
- - O (#PCDATA) -- lextype(char*) -->
- <!attlist namelist HyTime NAME #FIXED namelist >
-
- <!-- Name List Query -->
- <!element nmquery -- Query language expression that returns a name list --
- -- Selects elements or entities by semantic properties --
- -- Examples: SGML/Search, DSSSL location model --
- O O (nHyTime) >
- <!attlist nmquery HyTime NAME #FIXED nmquery >
-
- <!-- Coordinate Location Address -->
- <!element coordloc -- Locates quanta on one or more coordinate axes --
- - O (dimspec|pattern)+ >
- <!attlist coordloc HyTime NAME #FIXED coordloc
- id ID #REQUIRED
- -- locsrc attributes --
- -- aggloc attributes -->
-
- <!-- Pattern Matching Expression -->
- <!element pattern -- Pattern matching expression --
- -- Constraint: represents dimspec+ --
- -- Compares representation of ordered data to pattern (in a
- notation such as HyLex, Unix grep, C scanf, REXX parse)
- and returns dimspecs locating instances of pattern --
- O O (lexmodel) >
- <!attlist pattern HyTime NAME #FIXED pattern >
-
- <!-- String Location Address -->
- <!element strloc -- Locates string of bit combinations --
- - O (dimspec|pattern)+ >
- <!attlist strloc HyTime NAME #FIXED strloc
- id ID #REQUIRED
- -- locsrc attributes --
- -- aggloc attributes -->
-
- <!-- Token List Location Address -->
- <!element tokenloc -- Locates tokens in a token list --
- - O (dimspec|pattern)+ >
- <!attlist tokenloc HyTime NAME #FIXED tokenloc
- id ID #REQUIRED
- -- locsrc attributes --
- -- aggloc attributes -->
-
- <!-- Tree Location Address -->
- <!element treeloc -- Locates nodes in a tree --
- - O (dimspec|pattern)+ >
- <!attlist treeloc HyTime NAME #FIXED treeloc
- id ID #REQUIRED
- -- locsrc attributes --
- -- aggloc attributes -->
-
- <!-- Path Location Address -->
- <!element pathloc -- Locates nodes in a tree viewed as a path list --
- -- Constraint: must resolve to pairs of marker pairs --
- - O (dimspec|pattern)+ >
- <!attlist pathloc HyTime NAME #FIXED pathloc
- id ID #REQUIRED
- -- locsrc attributes --
- -- aggloc attributes -->
-
- <!-- Semantic Locations -->
- <!-- Attribute Location Address -->
- <!element attloc -- Locates attribute or object class ID --
- - O (nHyTime)>
- <!attlist attloc HyTime NAME #FIXED attloc
- id ID #REQUIRED
- -- attloc attributes --
- attlist -- Attribute list type --
- -- For SGML: data|starttag|link|result --
- NAME #IMPLIED -- Default: starttag --
- attname -- Attribute name --
- NAME #IMPLIED -- Default: object class ID --
- -- locsrc attributes --
- -- aggloc attributes -->
-
- <!-- Notation-specific Location Address -->
- <!element notloc -- Locates an arbitrary portion of data in terms of its
- data content notation (e.g., internal label,
- 3rd polygon in CGM) --
- - O (nHyTime) >
- <!attlist notloc HyTime NAME #FIXED notloc
- id ID #REQUIRED
- -- notloc attributes --
- prolog -- Semantic and parsing context for locsrc --
- -- reftype(nHyTime) --
- -- lextype(idrl) --
- CDATA "" -- Default: locsrc --
- -- locsrc attributes --
- -- aggloc attributes -->
-
-
- <!-- HYPERLINKS -->
- <!-- Independent Link -->
- <!element ilink -- Independent link --
- - O (nHyTime?) >
- <!attlist ilink HyTime NAME #FIXED ilink
- -- ilink attributes --
- endtypes -- Element types of link ends --
- -- lextype(gil) --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- linkends -- Link ends --
- -- In order corresponding to endtypes --
- -- eltype(linkend) --
- IDREFS #REQUIRED
- >
- <!element linkend -- Link end definition --
- -- Content is anchor location: if empty, link element
- content is anchor; if IDREFs, anchor is aggloc --
- -- reftype (#ANY) --
- - O (#PCDATA) -- lextype(idrl) -->
- <!attlist linkend HyTime NAME #FIXED linkend
- id ID #REQUIRED
- -- linkend attributes --
- traverse -- begin(B), return(R), both(BR) --
- (b|r|br) br
- aggacc -- Aggloc access: direct(D), indirect(I)
- cannot be an aggregate(N) --
- (d|i|n) n
- endterm -- Link end term information --
- -- reftype (#ANY) --
- IDREF #IMPLIED -- Default: use anchor --
- -- aggloc attributes --
- >
-
- <!-- Contextual Link -->
- <!element clink -- Contextual link --
- -- Constraint: content must be valid in the context
- in which the contextual link element occurs --
- - O ANY >
- <!attlist clink HyTime NAME #FIXED clink
- -- clink attributes --
- refsub -- Endtype of subject to which reference refers --
- -- Constraint: traverse must be #FIXED R or BR --
- -- lextype(GI) --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- linkends -- Link ends --
- -- Constraint: (refsub) --
- -- eltype(linkend) --
- IDREF #REQUIRED
- >
-
- <!-- Aggregate Location Link -->
- <!element agglink -- Aggregate location link --
- -- Links a list of locations into an aggloc --
- -- reftype (linkend) --
- - O (#PCDATA) -- lextype(idrl) -->
- <!attlist agglink HyTime NAME #FIXED agglink
- id ID #REQUIRED
- -- aggloc attributes --
- >
-
- <!-- Span Location Link -->
- <!element spanlink -- Span location link --
- -- A span between a pair of PARSED locations in an SGML
- document (except within attribute values) --
- -- If more than one pair, this element is equivalent
- to an aggloc whose members are all spanlocs --
- - O (nHyTime?) >
- <!attlist spanlink HyTime NAME #FIXED spanlink
- id ID #REQUIRED
- -- spanlink attributes --
- spanstrt -- Endtype of span start link end --
- -- lextype(GI) --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- spanend -- Endtype of span end link end --
- -- lextype(GI) --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- linkends -- Link ends --
- -- Constraint: (spanstrt, spanend) --
- -- eltype(linkend) --
- IDREFS #REQUIRED
- >
-
- <!-- FINITE COORDINATE SPACE -->
- <!element fcs -- Finite coordinate space --
- - O (evsched|wand|baton)+ >
- <!attlist fcs HyTime NAME #FIXED fcs
- id ID #IMPLIED
- -- fcs attributes --
- fcsmdu -- SMU to MDU ratio that makes the MDU the least
- common denominator of HMUs for all schedules on
- all axes of FCS in a given measurement domain.--
- -- Constraint: SMU name and ratio for one or
- more of the domains used in the FCS. --
- -- lextype((NAME,s+,frac),(s+,NAME,s+,frac)*) --
- CDATA #FIXED "" -- Default: equal to docmdu --
- axisdefs -- Definitions of FCS axes --
- -- lextype(gil) --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- >
- <!-- Axis Definition -->
- <!element axis -- Axis definition for a finite coordinate space --
- -- It extends the FCS definition; there is one instance,
- for use in referencing. --
- - O EMPTY >
- <!attlist axis HyTime NAME #FIXED axis
- -- axis attributes --
- axismeas -- Measurement domain (SMU) of this axis --
- -- lextype(token) --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- axismdu -- SMU to MDU ratio that makes the MDU the least
- common denominator of HMUs for all schedules on
- this axis in all FCS elements that use it.--
- -- lextype(frac) --
- CDATA #FIXED "" -- Default: equal to fcsmdu --
- axisdim -- Dimension of this axis in MDUs --
- -- lextype(NUMBER) --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- calendar -- Synchronizes axis to absolute date and time by
- specifying date/time of first quantum --
- -- Constraint: only if axismeas is SIsecond;
- empty string if not a calendar. Omission of date
- component means 1, of time component means 0.
- (Time is expressed in elapsed quanta.)
- Julian and UTC dates cannot be mixed. --
- -- eltype(calref) --
- -- lextype(IDREF) --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- >
-
- <!-- Schedule -->
- <!attlist sched
- -- sched use: evsched baton wand --
- axisord -- Order of axes in schedule --
- -- lextype(gil) --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- sorted -- Representation of schedule elements is sorted
- by order of position on first axis of schedule --
- -- lextype("sorted"|"unsorted") --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- apporder -- Order of schedule elements is significant to
- the application and must be preserved --
- -- lextype("order"|"disorder") --
- CDATA #FIXED "" -- Default: #FIXED in DTD --
- >
-
- <!-- Event Schedule -->
- <!element evsched -- Event schedule --
- - O (evgrp|event|clink)* >
- <!attlist evsched HyTime NAME #FIXED evsched
- id ID #IMPLIED
- -- sched attributes --
- -- schdmeas attributes --
- >
-
- <!-- Event Group -->
- <!element evgrp -- Event group --
- - O (evgrp|event|clink)+ >
- <!attlist evgrp HyTime NAME #FIXED evgrp
- id ID #IMPLIED
- -- evgrp attributes --
- grpscope -- Group scope (extent of group) --
- -- For each axis, the dimension is the lowest first
- quantum of any group member through the highest
- last quantum of any group member on that axis --
- -- Optional: can be calculated --
- -- Constraint: one dimspec per axis --
- -- eltype(dimspec) --
- -- lextype(idrl) --
- CDATA #IMPLIED -- Default: to be calculated --
- grpdex -- Group derived extent specification --
- -- Use for resizing, rearrangement, repetition.
- Group members are replaced with derived ones --
- -- Derived extents use same schdmeas as group --
- -- eltype(dexspec) --
- IDREF #IMPLIED -- Default: no derivation --
- -- schdmeas attributes --
- >
-
- <!-- Derived Extent Specification -->
- <!element dexspec -- Derived extent specification --
- -- Defines 1 or more derived extents for events in its scope;
- "scope" is extent of proscope, modscope, or evgrp --
- -- Constraint: number of dimspecs = number of derived extents
- * number of axes in derived extent --
- O O (dimspec+) >
- <!attlist dexspec HyTime NAME #FIXED dexspec >
-
- <!-- Event -->
- <!element event -- Event --
- -- Object could include loc addresses to identify portions --
- - O (%object;|%loc;)>
- <!attlist event HyTime NAME #FIXED event
- id ID #IMPLIED
- -- event attributes --
- exrecon -- Extent reconciliation rule if object won't fit --
- -- eltype(exrecon) --
- IDREF #IMPLIED -- Default: none --
- -- exspec attributes --
- -- schdmeas attributes --
- >
-
- <!-- Malleable Objects -->
- <!element pause -- Imperceivable object: silent and blank --
- - O (nHyTime?)>
- <!attlist pause HyTime NAME #FIXED pause
- id ID #REQUIRED >
- <!element hold -- Holdover object: continues last perception --
- -- If object is object of event (rather than filler),
- holds the previous object in the schedule --
- - O (nHyTime?)>
- <!attlist hold HyTime NAME #FIXED hold
- id ID #REQUIRED >
- <!element wallpapr -- Continuous perceivable object --
- - O (nHyTime)>
- <!attlist wallpapr HyTime NAME #FIXED wallpapr
- id ID #REQUIRED >
-
- <!-- Accessed Anchor List -->
- <!element accanch -- Accessed anchor list --
- -- Constraint: if empty, all anchors and link end terms of
- all links, when accessed, are the object of this event if
- they are not included in another accessed anchor list. --
- - O (acctype|acclink)* >
- <!attlist accanch HyTime NAME #FIXED accanch
- id ID #REQUIRED
- >
- <!attlist accend
- -- accend use: acctype acclink --
- accend -- For accessed link end, show ENDTERM or ANCHOR? --
- (endterm|anchor) anchor
- >
- <!element acctype -- Accessed link element type --
- -- Constraint: GI of link element type and zero or more of
- its link end types (zero means all link end types). --
- - O (#PCDATA) -- lextype(GI, (s+, GI)*) -->
- <!attlist acctype HyTime NAME #FIXED acctype
- -- accend attributes --
- >
- <!element acclink -- Accessed link element --
- -- Constraint: ID of link element and zero or more of its
- link ends (zero means all link ends). --
- -- eltype((ilink|clink|agglink|spanlink), linkend) --
- - O (#PCDATA) -- lextype(IDREF, (s+, IDREF)*) -->
- <!attlist acclink HyTime NAME #FIXED acclink
- -- accend attributes --
- >
-
- <!-- Extent Reconciliation Strategy -->
- <!element exrecon -- Reconciliation strategy if object won't fit extent --
- - O (nHyTime?) >
- <!attlist exrecon HyTime NAME #FIXED exrecon
- id ID #REQUIRED
- altrecon -- Alternative reconciliation strategy to try
- for least objectionable fit --
- -- eltype(exrecon) --
- IDREF #IMPLIED -- Default: no more to try --
- altcrit -- Criteria for deciding whether to use altrecon --
- -- eltype(nHyTime) --
- IDREF #IMPLIED -- Default: none --
- replace -- Replacement object (e.g., malleable or error) --
- -- Normally omitted for 1st exrecon in chain --
- -- eltype(#ANY) --
- IDREF #IMPLIED -- Default: don't replace --
- align -- Align object (before vamping) with event --
- -- Constraint: one F|C|L or snum for each axis --
- -- lextype(("F"|"C"|"L")+|(snum+, char+)) --
- CDATA "" -- Default: C for each axis --
- vamp -- Repeat undersize object in specified axis
- and optionally crop the excess. --
- -- VAMPCROP repeats 0 or more times until it
- overshoots, then crops the excess. --
- -- VAMPFILL repeats 0 or more times until it
- can go no further without overshooting, then
- fills the excess with filler. --
- -- NOVAMP doesn't repeat object but fills on
- undershot axes and crops on overshot axes. --
- -- Constraint: one keyword per axis --
- -- lextype((vampcrop|vampfill|novamp),
- (s+, (vampcrop|vampfill|novamp))*) --
- -- lextype(NAMES) --
- CDATA "" -- Default: novamp for each axis --
- filler -- Malleable object to fill excess extent --
- -- eltype(hold|pause|wallpapr) --
- IDREF pause
- >
-
- <!-- Finite Coordinate Space Location -->
- <!element fcsloc -- Imposes a HyTime FCS onto data so that a location
- within it can be defined by a HyTime extent --
- - O (dimspec+) --in impfcs order in FCS-units-->
- <!attlist fcsloc HyTime NAME #FIXED fcsloc
- id ID #REQUIRED
- -- fcsloc attributes --
- impfcs -- Finite coordinate space imposed on this data --
- -- eltype(fcs) --
- IDREF #REQUIRED
- -- locsrc attributes --
- -- aggloc attributes -->
-
- <!-- Calendar Reference -->
- <!element calref -- Calendar reference --
- -- Constraint: date is valid date in year/month/day
- format, Julian date is signed number, time is valid 24-hr
- time in hour:minute:second.decimal format, except
- that components can be omitted. --
- -- Omitted components are those of previous specified
- event on this axis (first quantum if none previous). --
- - O (#PCDATA) -- lextype((date|juldate),s+,timeoday) -->
- <!attlist calref HyTime NAME #FIXED calref
- id ID #IMPLIED
- -- calref attributes --
- timezone -- Offset from GMT --
- -- Constraint: valid time zone offset in hour,
- minute format; if DST specified, hour is
- incremented by 1 --
- -- lextype(snzi,(".",nzi)?, (s+, "DST")?) --
- CDATA "" -- Default: local time --
- era -- Era: previous (BC/BCE/BP) or current (AD/CE) --
- -- Constraint: not specified for juldate --
- -- lextype("BC"|"BCE"|"BP"|"AD"|"CE") --
- CDATA "" -- Default: last specified --
- >
-
-
- <!-- RENDITION -->
- <!-- Object Modification -->
- <!-- Wand -->
- <!element wand -- Wand --
- - O (modscope+)>
- <!attlist wand HyTime NAME #FIXED wand
- id ID #REQUIRED
- -- sched attributes --
- -- schdmeas attributes --
- >
- <!-- Modification Rule -->
- <!element modrule -- Modification rule --
- -- Constraint: an event schedule and any wands that affect it
- must be aligned (that is, have the same axisords). --
- -- reftype((evsched, (wand|wndpatch)) |
- ((event|evgrp), (nHyTime|modpatch)) --
- - O (#PCDATA) -- lextype(idr2l) -->
- <!attlist modrule HyTime NAME #FIXED modrule
- id ID #REQUIRED
- >
-
- <!-- Modifier Scope -->
- <!element modscope -- Modifier scope --
- - O (nHyTime)>
- <!attlist modscope HyTime NAME #FIXED modscope
- id ID #IMPLIED
- -- exspec attributes --
- >
-
- <!-- Patches -->
- <!element wndpatch -- Wand patch --
- -- Constraint: subset of SGML model group with IDREFs as
- names and no occurrence indicators or OR connectors. --
- -- reftype(wndpatch|wand) --
- - O (#PCDATA) -- lextype(char*) -->
- <!attlist wndpatch HyTime NAME #FIXED wndpatch
- id ID #REQUIRED >
- <!element modpatch -- Modifier patch --
- -- Constraint: subset of SGML model group with IDREFs as
- names and no occurrence indicators or OR connectors. --
- -- reftype(modpatch|nHyTime) --
- - O (#PCDATA) -- lextype(char*) -->
- <!attlist modpatch HyTime NAME #FIXED modpatch
- id ID #REQUIRED >
-
-
- <!-- Event Projection -->
- <!-- Baton -->
- <!element baton -- Schedule of schedule projectors --
- - O (proscope+) >
- <!attlist baton HyTime NAME #FIXED baton
- id ID #REQUIRED
- -- baton attributes --
- pevsched -- Projected event schedule --
- -- Constraint: must be different FCS from baton --
- -- eltype(evsched) --
- IDREF #REQUIRED
- -- sched attributes --
- -- schdmeas attributes --
- >
- <!-- Projection Rule -->
- <!element prorule -- Projection rule --
- -- Constraint: pairs identify original event schedule and
- baton, which must be aligned (have the same axisords). --
- -- reftype(evsched, baton) --
- - O (#PCDATA) -- lextype(idr2l) -->
- <!attlist prorule HyTime NAME #FIXED prorule
- id ID #REQUIRED >
-
- <!-- Projector Scope -->
- <!element proscope -- Projector scope --
- -- Defines the scope of an event projector
- as an extent of the unprojected schedule --
- - O (projectr) >
- <!attlist proscope HyTime NAME #FIXED proscope
- id ID #IMPLIED
- -- exspec attributes --
- >
-
- <!-- Event Projector -->
- <!element projectr -- Event projector --
- -- Defines extent in the projected schedule into which
- events within the projector scope will be projected --
- - O (dexspec|profun|scaleref) >
- <!attlist projectr HyTime NAME #FIXED projectr
- -- projectr attributes --
- strict -- Strictness of interpretation: e.g., rubato --
- -- lextype(tokl) --
- CDATA "" -- Default: last specified -->
-
- <!-- Projection Function -->
- <!element profun -- Projection function --
- -- Application attributes can serve as parameters.
- They can identify elements that return variables set
- during rendition, thereby allowing one baton to affect
- the behavior of another (batons controlling batons). --
- - O (nHyTime)>
- <!attlist profun HyTime NAME #FIXED profun >
-
- <!-- Scaling Reference -->
- <!element scaleref -- Scaling reference --
- -- Instantaneous scaling applicable to a specified quantum in
- each axis of an aligned original or projected schedule --
- -- Constraint: one dimref per axis of baton --
- - O (dimref+) >
- <!attlist scaleref HyTime NAME #FIXED scaleref >
-
-
- <!-- End of Architectural Forms -->
-
- <!-- HyTime Lexical Model -->
- <!NOTATION HyLex PUBLIC
- "+//ISO/IEC 10744//NOTATION HyTime Lexical Model Notation//EN" >
- <!ELEMENT HyLex -- HyTime lexical model --
- -- Constraint: SGML model group with literals and no
- AND connector. Names are ltn attribute values. --
- - O CDATA -- lextype(char*) -->
- <!ATTLIST HyLex HyTime NAME #FIXED lexmodel
- -- lexmodel attributes --
- ltn -- Lexical type name --
- NAME #REQUIRED
- notation -- Data content notation --
- NAME #FIXED HyLex
- >
-
- <!-- HyTime Single Operator Marker Function -->
- <!ELEMENT HyOp -- HyTime single operator marker function --
- -- Represents (i.e., function returns) an axis marker --
- -- For use when HyFunk is not available --
- - O (marker|dimref|markfun)* -- Content is "meta" -->
- <!ATTLIST HyOp HyTime NAME #FIXED markfun
- id ID #IMPLIED
- -- HyOp attributes --
- opname -- Operator name (same as HyFunk) --
- (sum|subt|mult|div|avg|max|min|abs|nabs|incr|decr|rand|mod)
- #REQUIRED
- >
-
- <!-- HyTime Function Language -->
- <!NOTATION HyFunk PUBLIC
- "+//ISO/IEC 10744//NOTATION HyTime Function Language//EN" >
- <!ELEMENT HyFunk -- HyTime function language expression --
- - O CDATA -- lextype(char*) -->
- <!ATTLIST HyFunk HyTime NAME #FIXED markfun
- -- markfun attributes --
- notation -- Data content notation --
- NAME #FIXED HyFunk
- mfn -- Marker function name --
- NAME #IMPLIED
- usemfn -- Mfn of another function to which to pass
- the args of this one --
- NAME #CONREF
- args -- Argument string passed to the function --
- -- Constraint: 1-999 tokens, each being a snzi
- or an IDREF that ultimately locates a snzi --
- -- reftype(#ANY) --
- -- lextype((snzi|IDREF), (s+, (snzi|IDREF))*) --
- CDATA #IMPLIED
- >
-
- <!--
- HyFunk is a trivial function language intended for simple arithmetic
- on axis markers; that is, non-zero integers within a finite range.
- The following table shows the syntax of the HyFunk language, defined
- using the HyLex notation.
-
- <hylex ltn=HyFunk> (fun) </hylex>
- <hylex ltn=fun> (startfun, s*, funbody*, s*, endfun) </hylex>
- <hylex ltn=startfun> ((mfn|("@",operator)), s*, "(") </hylex>
- <hylex ltn=funbody> ((operand, (s+, operand)*)) </hylex>
- <hylex ltn=endfun> (")") </hylex>
- <hylex ltn=operand> (fun|dimref|ddimref|snzi|arg) </hylex>
- <hylex ltn=dimref> ("@",dimop,s*,"(",s*, refbody, s*,")") </hylex>
- <hylex ltn=refbody> ((IDREF|(rni,"SCOPE")), s*, GI?) </hylex>
- <hylex ltn=ddimref> ("@",ddimop,s*,"(",s*, drefbody, s*,")") </hylex>
- <hylex ltn=drefbody> (IDREF, s+, IDREF, s*, GI?) </hylex>
- <hylex ltn=mfn> (NAME) </hylex>
- <hylex ltn=dimop> (NAME) </hylex>
- <hylex ltn=operator> (NAME) </hylex>
- <hylex ltn=snzi> (("+"|"-")?,unzi) </hylex>
- <hylex ltn=arg> ("%",nzdigit,((Digit, Digit?)?) </hylex>
- <hylex ltn=nzdigit> ("1"|"2"|"3"|"4"|"5"|"6"|"7"|"8"|"9") </hylex>
- <hylex ltn=unzi> (nzdigit,Digit*) </hylex>
-
- where:
-
- mfn is a marker function name from a HyFunk element.
- dimop is a dimension reference function named:
- first for a reference to the first quantum
- last for a reference to the last quantum
- qcnt for a reference to the quantum count
- flfirst for a reference to the first quantum with flip
- fllast for a reference to the last quantum with flip
- flqcnt for a reference to the quantum count with flip
- Its operands are:
- IDREF is the first operand, identifying an element with a
- dimension, or a dimref element.
- #SCOPE is an alternative first operand, permitted in a derived
- extent specification, identifying the derivation's scope.
- GI is the optional second operand, naming the axis of
- the identified element's extent, if it has more than one.
- ddimop is a derived dimension reference function named:
- dfirst for a reference to the derived first quantum
- dlast for a reference to the derived last quantum
- dqcnt for a reference to the derived quantum count
- dflfirst for a reference to the derived first quantum with flip
- dfllast for a reference to the derived last quantum with flip
- dflqcnt for a reference to the derived quantum count with flip
- Its operands are:
- IDREF is the first operand, identifying an unprojected event.
- IDREF is the second operand, identifying an event schedule
- projector or event group.
- GI is the optional third operand, naming the axis of the
- event's derived extent, if it has more than one.
- arg is a placeholder (%1-%999) that is replaced by a snzi
- specified directly or via an IDREF on the "ARGS" attribute of the
- HyFunk element containing the function. If not specified, it is empty.
- operator is a HyFunk operator.
-
- The following table shows each HyFunk operator name, the number of
- operands in its function body, and the value it returns.
-
- NAME FUNCTION BODY RETURNED VALUE
-
- avg (operand+) Average of all operands (rounded).
- decr (operand) Operand decremented by 1.
- div (operand, operand) First operand divided by second operand (truncated).
- incr (operand) Operand incremented by 1.
- max (operand+) Highest operand.
- min (operand+) Lowest operand.
- mod (operand, operand) Remainder of first operand divided by second operand.
- mult (operand, operand+) Product of all operands multiplied together.
- abs (operand) Absolute value of operand.
- nabs (operand) Negated absolute value of operand.
- rand () Pseudo-random value from 1 through hyqcnt.
- subt (operand, operand) Second operand subtracted from first.
- sum (operand, operand+) Sum of all operands.
- -->
-
- <!-- Measurement Units -->
- <!NOTATION gquantum PUBLIC -- Generic Quantum --
- "+//ISO/IEC 10744//NOTATION Virtual Measurement Unit//XX" >
- <!NOTATION SIsecond PUBLIC -- Time --
- "+//ISO/IEC 10744//NOTATION Systeme International second//XX" >
- <!NOTATION SImeter PUBLIC -- Length --
- "+//ISO/IEC 10744//NOTATION Systeme International meter//XX" >
- <!NOTATION virtime PUBLIC -- Virtual Time Unit --
- "+//ISO/IEC 10744//NOTATION Virtual Measurement Unit//XX" >
- <!NOTATION virspace PUBLIC -- Virtual Space Unit --
- "+//ISO/IEC 10744//NOTATION Virtual Measurement Unit//XX" >
-
- ]>
- <doc>
-
- <!-- Some Useful Instances -->
-
- <!-- The following "HyLex" elements comprise the public text identified as:
- "ISO/IEC 10744:1991::DIS//TEXT Useful HyLex Lexical Types//EN"
- -->
-
- <!-- Useful Lexical Types -->
- <hylex ltn=idrl> (IDREF, (s+, IDREF)*) </hylex><!-- IDREF list -->
- <hylex ltn=idrn> (IDREF | #NULL) </hylex><!-- IDREF or #NULL -->
- <hylex ltn=names> (NAME, (s+, NAME)*) </hylex><!-- name list -->
- <hylex ltn=numl>(NUMBER, (s+, NUMBER)*)</hylex><!-- number list -->
- <hylex ltn=gil> (GI, (s+, GI)*) </hylex><!-- GI list -->
- <hylex ltn=idr2> (IDREF, s+, IDREF) </hylex><!-- IDREF pair -->
- <hylex ltn=idr2l> (idr2, (s+, idr2)*) </hylex><!-- IDREF pair list -->
- <hylex ltn=idr3> (IDREF, s+, IDREF, s+, IDREF)
- </hylex><!-- IDREF triple -->
- <hylex ltn=idr3l> (idr3, (s+, idr3)*) </hylex><!-- IDREF triple list -->
- <hylex ltn=frac> (NUMBER, s+, NUMBER) </hylex><!-- unsigned fraction -->
- <hylex ltn=fracs> (frac, (s+, frac)*) </hylex><!-- unsigned fraction list -->
- <hylex ltn=snum> (("+"|"-")?,NUMBER) </hylex><!-- signed number -->
- <hylex ltn=nzdigit> ("1"|"2"|"3"|"4"|"5"|"6"|"7"|"8"|"9")
- </hylex><!-- non-zero digit -->
- <hylex ltn=unzi> (nzdigit,Digit*) </hylex><!-- unsigned non-zero integer-->
- <hylex ltn=snzi> (("+"|"-")?,unzi) </hylex><!-- signed non-zero integer -->
- <hylex ltn=token> (nmchar+) </hylex><!-- token -->
- <hylex ltn=tokl> (token, (s+, token)*) </hylex><!-- token list -->
- <hylex ltn=date> ((snum,"-")?,NUMBER?,"-",NUMBER?)
- </hylex><!-- UTC date -->
- <hylex ltn=timeoday> (NUMBER?,":",NUMBER?,(":",NUMBER)?,(".",Digit+)?)
- </hylex><!-- absolute time -->
- <hylex ltn=juldate> (snum) </hylex><!-- Julian date -->
-
- <!-- HyTime Measurement Unit Ratio (HMUratio) -->
- <!-- A HyFunk marker function for use in derived extent specifications only.
- The function element accepts a frac in its args and multiplies
- it by the qcnt of the derivation scope. An optional GI of an axis can
- be included as the third arg if the extent is multidimensional.
-
- Example of use for one dimension, ratio of 3/2:
-
- <dexspec><dimspec><marker2>
- <hyfunk usemfn=HMUratio args="3 2">
- </dexspec>
- -->
- <HyFunk mfn=HMUratio>@div(@mult(%1 @qcnt(#SCOPE %3))%2)</HyFunk>
-
- <!-- The following "measure" elements comprise the public text identified as:
- "ISO/IEC 10744:1991::DIS//TEXT Useful Measurement Domains//EN"
- -->
-
- <measure smu=gquantum>
- <granule gn=quantum gd=" 1 1 GQUANTUM">
- <granule gn=bit-combination gd=" 1 1 quantum">
- <granule gn=token gd=" 1 1 quantum">
- <granule gn=node gd=" 1 1 quantum">
- </measure>
-
- <measure smu=virtime>
- <granule gn=vtu gd=" 1 1 VIRTIME">
- </measure>
-
- <measure smu=virspace>
- <granule gn=vsu gd=" 1 1 VIRSPACE">
- </measure>
-
- <measure smu=SIsecond>
- <granule gn=Ysec gd=" 1 1000 Zsec">
- <granule gn=Zsec gd=" 1 1000 asec">
- <granule gn=asec gd=" 1 1000 fsec">
- <granule gn=fsec gd=" 1 1000 psec">
- <granule gn=psec gd=" 1 1000 nsec">
- <granule gn=nsec gd=" 1 1000 usec">
- <granule gn=usec gd=" 1 1000 msec">
- <granule gn=msec gd=" 1 10 csec">
- <granule gn=csec gd=" 1 10 dsec">
- <granule gn=dsec gd=" 1 10 second">
- <granule gn=SMPTE-50 gd=" 1 50 second">
- <granule gn=V1250 gd=" 1 50 second">
- <granule gn=SMPTE-240M gd=" 1 30 second">
- <granule gn=SMPTE-30 gd=" 1 30 second">
- <granule gn=SMPTE-30-drop gd=" 100 2997 second">
- <granule gn=SMPTE-25 gd=" 1 25 second">
- <granule gn=PAL gd=" 1 25 second">
- <granule gn=SECAM gd=" 1 25 second">
- <granule gn=European gd=" 1 25 second">
- <granule gn=SMPTE-24 gd=" 1 24 second">
- <granule gn=motion-picture gd=" 1 24 second">
- <granule gn=PC-tick gd=" 10 182 second">
- <granule gn=SMPTE-24-drop gd=" 100 2396 second">
- <granule gn=second gd=" 1 1 SISECOND">
- <granule gn=dasec gd=" 10 1 second">
- <granule gn=hsec gd=" 10 1 dasec">
- <granule gn=ksec gd=" 10 1 hsec">
- <granule gn=Msec gd=" 1000 1 ksec">
- <granule gn=Gsec gd=" 1000 1 Msec">
- <granule gn=Tsec gd=" 1000 1 Gsec">
- <granule gn=Psec gd=" 1000 1 Tsec">
- <granule gn=Esec gd=" 1000 1 Psec">
- <granule gn=Zsec gd=" 1000 1 Esec">
- <granule gn=Ysec gd=" 1000 1 Zsec">
- <granule gn=minute gd=" 60 1 second">
- <granule gn=quarter-hour gd=" 15 1 minute">
- <granule gn=half-hour gd=" 30 1 minute">
- <granule gn=hour gd=" 60 1 minute">
- <granule gn=day gd=" 24 1 hour">
- <granule gn=week gd=" 7 1 day">
- <granule gn=fortnight gd=" 2 1 week">
- <!-- Year and the granules based on it might not be accurate enough
- for some applications. -->
- <granule gn=year gd="3652425 10000 day">
- <granule gn=decade gd=" 10 1 year">
- <granule gn=millenium gd=" 1000 1 year">
- </measure>
-
- <measure smu=SImeter>
- <granule gn=ym gd=" 1 1000 zm">
- <granule gn=zm gd=" 1 1000 am">
- <granule gn=am gd=" 1 1000 fm">
- <granule gn=fm gd=" 1 1000 pm">
- <granule gn=pm gd=" 1 1000 nm">
- <granule gn=angstrom gd=" 1 10 nm">
- <granule gn=nm gd=" 1 1000 um">
- <granule gn=um gd=" 1 1000 mm">
- <granule gn=mm gd=" 1 10 cm">
- <granule gn=cm gd=" 1 10 dm">
- <granule gn=dm gd=" 1 10 meter">
- <granule gn=meter gd=" 1 1 SIMETER">
- <granule gn=dam gd=" 10 1 meter">
- <granule gn=hm gd=" 10 1 dam">
- <granule gn=km gd=" 10 1 hm">
- <granule gn=Mm gd=" 1000 1 km">
- <granule gn=nautical-mile gd=" 1852 1 meter">
- <granule gn=Gm gd=" 1000 1 Mm">
- <granule gn=AU gd=" 1 206265 parsec">
- <granule gn=Tm gd=" 1000 1 Gm">
- <granule gn=lightyear gd=" 100 326 parsec">
- <granule gn=Pm gd=" 1000 1 Tm">
- <granule gn=parsec gd=" 3086 1 Tm">
- <granule gn=Em gd=" 1000 1 Pm">
- <granule gn=Zm gd=" 1000 1 Em">
- <granule gn=Ym gd=" 1000 1 Zm">
- <granule gn=microinch gd=" 1 1000 milliinch">
- <granule gn=milliinch gd=" 1 1000 inch">
- <granule gn=point gd=" 1 12 pica">
- <granule gn=pica gd=" 1 6 inch">
- <granule gn=barleycorn gd=" 1 3 inch">
- <granule gn=inch gd=" 100 254 cm">
- <granule gn=thumb gd=" 1 1 inch">
- <granule gn=hand gd=" 4 1 inch">
- <granule gn=foot gd=" 12 1 inch">
- <granule gn=cubit gd=" 18 1 inch">
- <granule gn=royal-cubit gd=" 24 1 inch">
- <granule gn=yard gd=" 3 1 foot">
- <granule gn=fathom gd=" 6 1 foot">
- <granule gn=perch gd=" 11 2 yard">
- <granule gn=pole gd=" 1 1 perch">
- <granule gn=rod gd=" 1 1 perch">
- <granule gn=chain gd=" 66 1 feet">
- <granule gn=furlong gd=" 220 1 yard">
- <granule gn=quarter-mile gd=" 440 1 yard">
- <granule gn=mile gd=" 1760 1 yard">
- <granule gn=league gd=" 7 1 mile">
- </measure>
-
- </doc>
-
-